package com.cskaoyan.javase.oop2._1extends._10final._3variable._1local;

/**
 * final修饰局部变量,表示局部常量,它的使用和之前唯一的区别在于:
 *      值一旦固定就不能修改了,因为它是常量了.
 *
 * 我们以最常见的方法中的局部常量为例,局部位置有两个:
 *      1.方法体
 *          语法: final 数据类型 变量名 = 值;
 *          局部常量需要赋初始化值,一旦赋值,就不可更改!!
 *
 *      2.方法的形参列表
 *          语法: final 数据类型 变量名
 *          它的含义该形参对应实参一旦传入,就不可修改了,是一个常量
 *
 * @since 09:41
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo {
    public static void main(String[] args) {
        test(10.0);
        double b = 1.0;
        test(b);
    }

    public static void test(final double b) {
        final int a = 10;
        System.out.println(a);
        System.out.println(a + 1);
        // Cannot assign a value to final variable 'a'
        // System.out.println(a++);
        System.out.println(b);
        System.out.println(b + 1);
        // System.out.println(b++);
    }
}
